package cn.iocoder.yudao.module.mqtt.controller.admin.configalarm.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import jakarta.validation.constraints.*;

@Schema(description = "管理后台 - MQTT报警配置新增/修改 Request VO")
@Data
public class ConfigAlarmSaveReqVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24634")
    private Long id;

    @Schema(description = "报警类型：", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    private String alarmType;

    @Schema(description = "数据类型：", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
    @NotEmpty(message = "数据类型：不能为空")
    private String dataType;

    @Schema(description = "单位", example = "2")
    private String unit;

    @Schema(description = "大于的值", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "大于的值不能为空")
    private String greaterValue;

    @Schema(description = "小于的值", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "小于的值不能为空")
    private String lessValue;

    @Schema(description = "微信消息", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "微信消息")
    private String openWeixin;

    @Schema(description = "短信消息", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "短信消息")
    private String openSms;

    @Schema(description = "是否启用", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotEmpty(message = "是否启用：0-禁用，1-启用不能为空")
    private String ararmStatus;

    @Schema(description = "描述", example = "你说的对")
    private String description;

}